# -*- conding:utf-8 -*-
print("*"*40, "第一种", "*"*40)
# 从1 - 10 遍历输出九九乘法表
for x in range(1, 10):
    for y in range(1, x+1):
        count = x * y
        print("{}*{} = {:<4}".format(y, x, count), end=" ")
        # 左边数字值为 y， 右边数字值为 x， count 计算结果， end取消换行，加空格
        # {:<4} 填充 count 右边空格，宽度为4
    print("")
    # 换行

print("#"*45, "第二种", "#"*45)

for y in range(9, 0, -1):
    for x in range(1, y+1):
        count = x * y
        print("{}*{} = {:<4}".format(x, y, count), end=" ")
        # 左边数字值为 x， 右边数字值为 y， count 计算结果， end取消换行，加空格
        # {:<4} 填充 count 右边空格，宽度为4
    print("")
    # 换行

print("#"*45, "第三种", "#"*45)

for x in range(1, 10):
    for z in range(x, 9):
        print(end="           ")
        # 按第二种方式的位置，遍历打印空格
    for y in range(x, 0, -1):
        print("{}*{} = {:<4}".format(x, y, x*y), end=" ")
        # 左边数字值为 y， 右边数字值为 x， count 计算结果， end取消换行，加空格
        # {:<4} 填充 count 右边空格，宽度为4
    print("")
    # 换行

print("#"*45, "第四种", "#"*45)

q = 0
for x in range(9, 0, -1):
    for y in range(x, 0, -1):
        print("{}*{} = {:<4}".format(x, y, x*y), end=" ")
        # 左边数字值为 y， 右边数字值为 x， count 计算结果， end取消换行，加空格
        # {:<4} 填充 count 右边空格，宽度为4
    print("")
    # 换行
    q += 1
    for t in range(0, q):
        print(end="           ")
        # 先显示，然后按第一种方式的位置打印空格
